草庐IT

python 反序列化

全部标签

python - 如何在 Python 中验证具有多个命名空间的 XML?

我正在尝试在Python2.7中编写一些单元测试以验证我对OAI-PMH模式所做的一些扩展:http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd我遇到的问题是具有多个嵌套namespace的业务是由上述XSD中的此规范引起的:MetadatamustbeexpressedinXMLthatcomplieswithanotherXMLSchema(namespace=#other).Metadatamustbeexplicitlyqualifiedintheresponse.这是我正在使用的代码片段:importlxml.etree,urllib

python - 删除 lxml 中的所有命名空间?

我正在使用python中的lxml库处理一些谷歌的数据API。命名空间在这里是一个巨大的麻烦。对于我正在做的很多工作(主要是xpath的东西),直接忽略它们会很好。有没有一种简单的方法可以忽略python/lxml中的xml命名空间?谢谢! 最佳答案 如果您想从元素和属性中删除所有命名空间,我建议使用下面显示的代码。上下文:在我的应用程序中,我正在获取SOAP响应流的XML表示,但我对在客户端构建对象不感兴趣;我只对XML表示本身感兴趣。此外,我对任何命名空间的事情都不感兴趣,这只会让事情变得比我需要的更复杂,就我的目的而言。因此,

.net - XML 序列化丢失命名空间

我有如下CRM实体XML消息:....SomethingHere...然后我将它反序列化为一个对象并序列化回xml我明白了SomethingHere...我松开了xmlns:b的定义。知道为什么吗? 最佳答案 四十二是正确的:属性值不携带任何默认语义,因此xml处理器无法识别命名空间的使用。如果你想在你的i:type属性中引用一些b数据,你可以使用一个映射元素来关联c:value带有(假设的)b:value,即:..................您可以在其中将_:ref声明为相应xml模式中的IDREF属性。您可能需要调整1:n-

c# - XML 反序列化和 XPath?

我有这样的Xml...Snip....MRJohnWayne.....Snip...其中CitizenName是Party节点中的复杂类型。(这是从我正在为其创建适配器的第3方集成接收到的xml)我对在我的类中尝试反序列化为我宁愿拥有的子类型不感兴趣。publicclassParty{publicstringFirstName{get;set;}publicstringLastName{get;set;}}因此,与其将我的类定义作为XML表示的内容的具体定义,不如用XPath之类的东西来装饰属性,例如。[XmlElement("\CitizenName\CitizenNameForeN

python - 如何反序列化由 to_xml() 在 google appengine 中创建的 xml

在GoogleAppEngine中,我可以通过调用对象的to_xml()方法来序列化对象。似乎没有等效的from_xml()方法来反序列化xml。是否有一种有效的方法来反序列化回对象? 最佳答案 澄清一下,我将假设您询问的是Model.to_xml()方法,而高效是指您可以调用的单一方法,它将为您提供模型对象。正如您所指出的,数据存储API的模型类中没有这样的方法。我认为toXML方法的目的是使模型易于导出到另一个应用程序,例如javascript客户端或导入到另一个数据库或存储机制,类似于使用远程API。应该可以创建一个特定模型类

python - IronPython 和 xml.etree.ElementTree 非法字符错误

我正在尝试使用xml.etree.ElementTree.parse()读取包含utf8字符的XML文件。当使用常规python(2.7.4)解释器运行代码时,它工作正常并且我没有收到任何错误,但是当我尝试使用IronPython运行相同的代码时,我得到一个Syntaxerroratline18:illegalcharacterincontent错误。我还尝试先使用codecs.open("file.xml","r","utf-8")打开文件,但收到以下错误Illegalcharactersinpath如何修复IronPython中的这个错误?可以使用替代的xml解析器,但我更喜欢在x

c# - 反序列化异常处理

如果我读这个xml:sciezka44Napismoj反序列化会在内部异常中显示:{"Thestring'44'isnotavalidBooleanvalue."}现在我想从导致异常的字段的异常对象名称中读取(在这个例子中我应该得到“编码”)。如何做到这一点?[Serializable]publicclassSettings{publicstringFontPath{get;set;}publicboolCoding{get;set;}}try{using(FileStreams=File.OpenRead(fileName)){XmlSerializerxs=newXmlSerial

python - 'ascii' 编解码器无法解码位置 5367 : ordinal not in range(128) 中的字节 0xe2

Django1.6.1python3.2.3Apache2.2.2Ubuntu12.04Postgres9.1.11我在尝试导入序列化XML文件时遇到此错误。我从我用于开发服务器的一个数据库导出它,片刻之后我将它导入另一个开发服务器(在同一台机器上)上的另一个数据库。我很困惑为什么它不处理导入时的UTF-8字符。我没有做任何特别的事情。另外,在我上次测试时,相同的代码也有效。这是我在应用程序的views.py...中用于导出和导入的代码fromdjango.shortcutsimportrender,render_to_response,get_object_or_404fromdja

python - 将 xml 字符串转换为 Python 列表

我是Python新手。我想将此XML字符串显示为模板中的列表。xmlData="""NewTask20NewTask20Newask20NewTask20"""我只想将其显示为列表。我导入cElementTreefromxml.etreeimportcElementTreeasET我也做了:xmlList=ET.fromstring(xmlData)但我不知道如何显示它。我想展示这样的东西。printxmlList.nameprintxmlList.mission_idprintxmlList.parent_task_id请帮助我了解正确的语法。 最佳答案

C#将不同类型的xml数组反序列化为多个数组

我有以下xml:有没有办法将其反序列化为C#对象,以便AccessibleApplications和EligibleApplications成为两个独立的数组?我尝试了以下操作但出现异常,因为“应用程序”被多次使用。[XmlArray("Applications")][XmlArrayItem("AccessibleApplication")]publicListAccessibleApplications{get;set;}[XmlArray("Applications")][XmlArrayItem("EligibleApplication")]publicListEligible